package com.hzw.saas.common.pay.bean;

import java.util.Date;

import com.hzw.saas.common.pay.enums.PayType;
import com.hzw.saas.common.pay.enums.TradeStatusEnum;
import lombok.Data;

/**
 * 订单状态
 *
 * @author zzl
 * @since 2020-09-24
 */
@Data
public class TradeStatus {

    /**
     * 商户订单号
     * 对应：
     * 支付宝商户订单号：out_trade_no
     * 银联商户订单号: orderId
     */
    private String payNo;

    /**
     * 平台交易号
     * 对应：
     * 支付宝交易号: trade_no
     * 银联流水号: queryId
     *
     */
    private String bizPayNo;

    /**
     * 订单创建时间 yyyyMMddHHmmss
     */
    private Date createTime;

    /**
     * 订单支付时间 yyyyMMddHHmmss
     */
    private Date payTime;

    /**
     * 状态码
     */
    private TradeStatusEnum tradeStatus;

    /**
     * 所查询的支付方式
     */
    private PayType payType;

    public TradeStatus() {
    }

    public TradeStatus(String payNo, String bizPayNo) {
        this.payNo = payNo;
        this.bizPayNo = bizPayNo;
    }

    public TradeStatus(String payNo, String bizPayNo, Date createTime) {
        this(payNo, bizPayNo);
        this.createTime = createTime;
    }
}
